home *** CD-ROM | disk | FTP | other *** search
- /*
- ** Data.h
- **
- ** Global symbol definitions
- **
- ** Copyright © 1990-1996 by Olaf `Olsen' Barthel
- ** All Rights Reserved
- */
-
- #ifndef _DATA_H
- #define _DATA_H 1
-
- // In VersionTag.a
-
- extern LONG TermVersion;
- extern LONG TermRevision;
- extern UBYTE TermName[];
- extern UBYTE TermDate[];
-
-
- /**********************************************************************/
-
-
- extern BOOLEAN DebugFlag;
-
- /* Libraries. */
-
- extern struct ExecBase *SysBase;
- extern struct DosLibrary *DOSBase;
- extern struct Library *GTLayoutBase;
-
- extern struct IntuitionBase *IntuitionBase;
- extern struct GfxBase *GfxBase;
- extern struct RxsLib *RexxSysBase;
- extern struct LocaleBase *LocaleBase;
- extern struct Library *GadToolsBase,
- *TimerBase,
- *ConsoleDevice,
- *DiskfontBase,
- *UtilityBase,
- *AslBase,
- *IFFParseBase,
- *CxBase,
- *IconBase,
- *LayersBase,
- *TranslatorBase,
- *WorkbenchBase,
- *AmigaGuideBase,
- *XEmulatorBase,
- *XProtocolBase,
- *DataTypesBase,
- *OwnDevUnitBase;
-
- extern BOOLEAN Kick30;
-
- /* Timer device. */
-
- extern struct timerequest *TimeRequest;
- extern struct MsgPort *TimePort;
-
- /* Console device. */
-
- extern struct IOStdReq *ConsoleRequest;
- extern struct KeyMap *KeyMap;
- extern BPTR KeySegment;
-
- /* Screen & Windows. */
-
- extern struct Screen *Screen,
- *SharedScreen;
- extern struct Window *Window;
- extern ULONG OpenWindowTag;
- extern LONG WindowWidth,
- WindowHeight,
- WindowLeft,
- WindowTop;
- extern struct Window *StatusWindow;
- extern UWORD StatusOffset;
- extern struct RastPort StatusRastPort,
- *StatusRPort;
- extern UWORD StatusDisplayLeft,
- StatusDisplayTop,
- StatusDisplayWidth,
- StatusDisplayHeight;
- extern APTR OldWindowPtr;
- extern UBYTE ScreenTitle[80];
- extern UBYTE WindowTitle[80];
- extern UBYTE DepthMask;
- extern LONG RenderPens[4],
- MappedPens[2][32],
- SafeTextPen;
- extern struct DrawInfo *DrawInfo;
- extern UWORD *Pens;
- extern LONG ScreenWidth,
- ScreenHeight;
- extern BOOLEAN UseMasking;
- extern struct IBox WindowBox;
-
- extern struct BlockMarker *WindowMarker;
- extern ULONG ClickSecs,ClickMicros;
- extern BOOLEAN FirstClick,HoldClick;
- extern LONG ClickX,ClickY;
-
- /* Workbench AppWindow support. */
-
- extern struct AppWindow *WorkbenchWindow;
- extern struct MsgPort *WorkbenchPort;
-
- /* Graphics rendering. */
-
- extern struct ViewPort *VPort;
- extern struct RastPort *RPort;
- extern struct Region *ClipRegion,
- *OldRegion;
- extern struct TextFont *GFX,
- *CurrentFont,
- *UserTextFont;
- extern WORD UserFontHeight,
- UserFontWidth,
- UserFontBase;
- extern UBYTE UserFontName[40];
- extern struct TextFont *TextFont;
- extern WORD TextFontHeight,
- TextFontWidth,
- TextFontBase;
- extern struct TTextAttr TextAttr;
- extern UBYTE TextFontName[40];
- extern struct TTextAttr UserFont;
- extern struct TagItem TagDPI[2];
- extern APTR VisualInfo;
- extern UWORD FontRightExtend;
-
- extern ULONG (* ReadAPen)(struct RastPort *RPort);
- extern ULONG (* ReadBPen)(struct RastPort *RPort);
- extern ULONG (* ReadDrMd)(struct RastPort *RPort);
- extern ULONG (* SetMask)(struct RastPort *RPort,ULONG Mask);
-
- extern UWORD MonoPens[];
- extern UWORD StandardPens[];
- extern UWORD ANSIPens[];
- extern UWORD EGAPens[];
- extern UWORD NewEGAPens[];
- extern UWORD AtomicColours[16];
- extern UWORD EGAColours[16];
- extern UWORD ANSIColours[16];
-
- extern UWORD DefaultColours[32],
- BlinkColours[32],
- NormalColours[32],
- StandardColours[32],
- PaletteSize;
-
- /* Line/Column offset tables. */
-
- extern LONG *OffsetXTable,
- *OffsetYTable;
-
- /* DOS data. */
-
- extern struct Process *ThisProcess;
- extern struct Process *StatusProcess;
- extern struct Process *RexxProcess;
- extern struct MsgPort *TermRexxPort;
- extern struct WBStartup *WBenchMsg;
- extern BPTR WBenchLock;
- extern struct TermPort *TermPort;
- extern BYTE CheckBit,
- OwnDevBit;
- extern BOOLEAN InRexx;
- extern WORD LimitCount;
- extern UBYTE LimitMacro[MAX_FILENAME_LENGTH];
- extern LONG CantQuit;
-
- /* Character conversion. */
-
- extern struct InputEvent *FakeInputEvent;
-
- /* Serial I/O. */
-
- extern struct IOExtSer *ReadRequest;
- extern struct IOExtSer *WriteRequest;
- extern struct MsgPort *ReadPort;
- extern UBYTE *ReadBuffer,
- *HostReadBuffer;
- extern UBYTE *SerialMessage;
- extern ULONG DTERate,
- SerialBufferSize;
- extern BOOLEAN ProcessIO;
- extern BOOLEAN FirstInvocation;
- extern BOOLEAN UseRTS_CTS;
-
- extern UBYTE NewDevice[MAX_FILENAME_LENGTH];
- extern LONG NewUnit;
- extern BOOLEAN UseNewDevice,
- UseNewUnit;
-
- extern LONG BaudRates[];
- extern WORD NumBaudRates;
-
- extern struct RendezvousSemaphore RendezvousSemaphore;
-
- /* Localization support. */
-
- extern struct Catalog *Catalog;
- extern struct Locale *Locale;
- extern UBYTE DecimalPoint;
-
- /* Hotkeys. */
-
- extern struct Hotkeys Hotkeys;
-
- /* Static default fonts. */
-
- extern struct TextAttr DefaultFont;
- extern struct TextAttr GFXFont;
-
- /* Character lookup tables. */
-
- extern BYTE IsPrintable[256];
- extern BYTE IsGlyph[256];
- extern BYTE CharType[256];
-
- /* ISO -> IBM font conversion. */
-
- extern UBYTE IBMConversion[256];
-
- /* IBM -> ISO font conversion. */
-
- extern UBYTE ISOConversion[256];
-
- /* Table of graphics characters. */
-
- extern BYTE GfxTable[256];
-
- /* Special character treatment. */
-
- extern struct SpecialKey SpecialKeys[13];
- extern JUMP *SpecialTable;
-
- extern BYTE AbortMap[256];
- extern JUMP *AbortTable;
-
- extern VOID (* ConDump)(STRPTR,LONG);
- extern VOID (* ConOutput)(STRPTR,LONG);
- extern VOID (* ConProcessData)(register STRPTR,register LONG);
-
- /* Shared global string formatting buffer. */
-
- extern UBYTE SharedBuffer[512];
-
- /* Some more handy buffers. */
-
- extern UBYTE ARexxCommandBuffer[256],AmigaDOSCommandBuffer[256],DialNumberBuffer[256];
-
- /* Screen pull-down-menu. */
-
- extern struct NewMenu TermMenu[];
- extern WORD NumMenuEntries;
- extern LONG MenuLabels[];
-
- extern struct Menu *Menu;
- extern struct Image *AmigaGlyph,
- *CheckGlyph;
-
- /* Cross-hatch pattern. */
-
- extern ULONG Crosshatch;
-
- /* Configuration. */
-
- extern struct Configuration *Config,
- *PrivateConfig,
- *BackupConfig;
- extern struct SpeechConfig SpeechConfig;
- extern BOOLEAN English;
- extern BYTE Status;
- extern BOOLEAN Online,WasOnline;
- extern ULONG OnlineMinutes;
- extern UWORD PublicModes;
- extern struct SignalSemaphore OnlineSemaphore;
-
- extern UBYTE LastConfig[MAX_FILENAME_LENGTH];
- extern UBYTE DefaultPubScreenName[MAXPUBSCREENNAME + 1],
- SomePubScreenName[MAXPUBSCREENNAME + 1];
-
- /* Capture file. */
-
- extern struct Buffer *FileCapture;
- extern BPTR PrinterCapture;
- extern UBYTE CaptureName[MAX_FILENAME_LENGTH];
- extern BOOLEAN StandardPrinterCapture,
- ControllerActive;
- extern LONG BufferFlushCount;
- extern VOID (* CaptureData)(register APTR Data,register LONG Size);
- extern BOOLEAN RawCapture;
- extern ParseContext *ParserStuff;
-
- /* Buffer. */
-
- extern UBYTE **BufferLines;
- extern LONG Lines;
- extern struct SignalSemaphore *BufferSemaphore;
- extern LONG MaxLines;
- extern LONG BufferSpace;
- extern BOOLEAN BufferClosed;
- extern BOOLEAN BufferFrozen;
-
- extern struct MinList ReviewBufferHistory,
- TextBufferHistory;
-
- /* Sound support.c */
-
- extern struct SoundConfig SoundConfig;
- extern BOOLEAN SoundChanged;
-
- /* Phonebook. */
-
- extern struct PhoneEntry **Phonebook;
- extern LONG PhoneSize;
- extern LONG NumPhoneEntries;
- extern struct MinList PhoneGroupList;
- extern ULONG PhonebookID;
- extern ULONG PhonebookDefaultGroup;
- extern UBYTE PhonePassword[256];
- extern BOOLEAN PhonePasswordUsed,
- PhonebookAutoDial,
- PhonebookAutoExit,
- RebuildMenu;
- extern UBYTE Password[100];
- extern UBYTE UserName[100];
-
- extern UBYTE CurrentBBSName[40],
- CurrentBBSNumber[100],
- CurrentBBSComment[100];
-
- extern UBYTE LastPhone[MAX_FILENAME_LENGTH];
- extern UBYTE LastKeys[MAX_FILENAME_LENGTH];
- extern UBYTE LastMacros[MAX_FILENAME_LENGTH];
- extern UBYTE LastCursorKeys[MAX_FILENAME_LENGTH];
- extern UBYTE LastTranslation[MAX_FILENAME_LENGTH];
- extern UBYTE LastSpeech[MAX_FILENAME_LENGTH];
- extern UBYTE LastSound[MAX_FILENAME_LENGTH];
-
- extern struct MacroKeys *MacroKeys;
- extern struct CursorKeys *CursorKeys;
-
- /* Console stuff. */
-
- extern UBYTE *StripBuffer;
- extern UWORD LastLine,LastColumn,LastPixel;
- extern UWORD LastPrintableColumn;
- extern UWORD LastPrintablePixel;
- extern UWORD CharCellNominator,CharCellDenominator;
- extern UBYTE CurrentFontScale,FontScalingRequired,CurrentCharWidth;
- extern UBYTE Charset,Attributes,FgPen,BgPen;
- extern WORD CursorX,CursorY,Top,Bottom;
- extern BOOLEAN UseRegion,RegionSet,InSequence,Quiet,Blocking;
- extern BYTE *TabStops;
- extern UWORD TabStopMax;
- extern BYTE CharMode[2];
-
- extern BOOLEAN VT52_Mode;
-
- extern BOOLEAN ResetDisplay,
- DisplayReopened,
- FixPubScreenMode,
- FixScreenSize,
- Apocalypse;
-
- extern struct SignalSemaphore TerminalSemaphore; // Protection from shape changers
-
- /* Flow filter. */
-
- extern STRPTR AttentionBuffers[SCAN_COUNT];
- extern BOOLEAN BaudPending,FullCheck,UseFlow;
- extern UBYTE BaudBuffer[80],BaudCount;
-
- extern struct FlowInfo FlowInfo;
-
- extern STRPTR DataHold;
- extern LONG DataSize;
-
- /* Transfer data. */
-
- extern BOOLEAN BinaryTransfer;
- extern LONG TransferAbortState;
- extern WORD TransferAbortCount;
- extern LONG TransferBits;
-
- extern VOID (* ConTransfer)(STRPTR,LONG);
-
- extern UBYTE *DownloadPath;
- extern BOOLEAN Uploading;
- extern BOOLEAN DidTransfer;
-
- extern struct Window *TransferWindow;
- extern UBYTE TransferTitleBuffer[256];
- extern BOOLEAN TransferZoomed;
- extern STRPTR TransferWindowTitle;
-
- extern struct LayoutHandle *TransferHandle;
- extern struct List TransferInfoList;
-
- extern struct FileTransferInfo *FileTransferInfo;
-
- extern struct XPR_IO *XprIO;
- extern struct XPR_UPDATE *Update_Backup;
- extern struct MinList Update_MsgList;
- extern WORD Update_MsgCount;
- extern UBYTE ProtocolOptsBuffer[256];
- extern BOOLEAN NewOptions;
- extern BOOLEAN XPRCommandSelected;
- extern UBYTE LastXprLibrary[MAX_FILENAME_LENGTH];
- extern UBYTE TransferProtocolName[40];
- extern UBYTE ConvNumber[30],ConvNumber10[30];
- extern BOOLEAN UsesZModem,SendAbort,TransferAborted,TransferFailed,TransferError;
-
- extern struct Process *TransferProcess;
-
- /* The standard ZModem cancel sequence
- * (ten CAN chars followed by ten
- * BS chars).
- */
-
- extern UBYTE ZModemCancel[];
-
- /* Pay per minute. */
-
- extern LONG PayPerUnit[2];
- extern LONG SecPerUnit[2];
- extern struct PhoneEntry *ChosenEntry;
- extern struct List *PatternList,
- *ChosenPattern;
- extern UBYTE LastPattern[MAX_FILENAME_LENGTH];
- extern BOOLEAN PatternsChanged;
- extern struct SignalSemaphore PatternSemaphore;
-
- /* Execute a command/script. */
-
- extern UBYTE WindowName[256];
-
- extern ULONG BlockNestCount;
- extern BOOLEAN WeAreBlocking;
-
- /* Dial list. */
-
- extern struct List *DialList;
- extern BOOLEAN SendStartup;
- extern LONG FirstDialMenu;
- extern struct RexxMsg *DialMsg;
-
- /* TermMain data. */
-
- extern BOOLEAN ReleaseSerial;
- extern BOOLEAN ResetSerial;
- extern BOOLEAN MainTerminated,
- IconTerminated,
- DoIconify,
- DoDial,
- KeepQuiet;
-
- extern BOOLEAN ConfigChanged,PhonebookChanged,TranslationChanged,
- MacroChanged,CursorKeysChanged,FastMacrosChanged,
- HotkeysChanged,SpeechChanged,BufferChanged;
-
- /* String gadget hooks. */
-
- extern struct Window *CommandWindow;
- extern struct Gadget *CommandGadget;
-
- extern BOOLEAN ClipInput,
- ClipXerox,
- ClipPrefix;
-
- /* Text sending. */
-
- extern UBYTE SendPrompt[256];
- extern LONG SendPromptLen;
- extern BOOL (* SendLine)(register STRPTR,register LONG);
-
- /* Packet window. */
-
- extern struct Window *PacketWindow;
- extern struct Gadget *PacketGadgetArray[2];
- extern struct Menu *PacketMenu;
- extern struct Gadget *PacketGadgetList;
- extern struct List PacketHistoryList;
-
- /* Some more colour control flags. */
-
- extern BOOLEAN Initializing,LoadColours;
-
- /* The character raster. */
-
- extern UBYTE *Raster,*RasterAttr;
- extern LONG RasterWidth,RasterHeight;
- extern BOOLEAN Marking;
- extern struct SignalSemaphore *RasterSemaphore;
- extern BOOLEAN RasterEnabled;
-
- /* Generic lists. */
-
- extern struct GenericList *GenericListTable[GLIST_COUNT];
-
- /* File version test. */
-
- extern ULONG VersionProps[2];
-
- /* Window stack. */
-
- extern struct Window *TopWindow;
-
- extern struct Window *WindowStack[5];
- extern WORD WindowStackPtr;
-
- /* Global term ID. */
-
- extern LONG TermID;
- extern UBYTE TermIDString[MAXPUBSCREENNAME + 1];
- extern UBYTE RexxPortName[256];
-
- /* Fast! macros. */
-
- extern struct List FastMacroList;
- extern LONG FastMacroCount;
- extern UBYTE LastFastMacros[MAX_FILENAME_LENGTH];
- extern struct Window *FastWindow;
- extern WORD FastWindowLeft,
- FastWindowTop,
- FastWindowHeight;
-
- /* Double-buffered file locking. */
-
- extern struct List DoubleBufferList;
- extern struct SignalSemaphore DoubleBufferSemaphore;
-
- /* XEM interface. */
-
- extern struct XEM_IO *XEM_IO;
- extern ULONG XEM_Signal;
- extern struct XEmulatorHostData XEM_HostData;
- extern UBYTE *OptionTitle;
- extern struct List XEM_MacroList;
- extern struct XEmulatorMacroKey *XEM_MacroKeys;
- extern UBYTE EmulationName[40];
-
- extern struct List EmptyList;
-
- /* Screen scrolling support. */
-
- extern UWORD ScrollLineFirst,ScrollLineLast,
- ScrollLineCount;
- extern struct ScrollLineInfo *ScrollLines;
-
- /* term review buffer. */
-
- extern struct Window *ReviewWindow;
-
- /* Background information. */
-
- extern ULONG BytesIn,
- BytesOut;
- extern struct DateStamp SessionStart;
- extern struct Window *InfoWindow;
-
- /* Gadget support routines */
-
- extern LONG InterWidth,
- InterHeight;
-
- /* Character translation. */
-
- extern struct TranslationEntry **SendTable,
- **ReceiveTable;
-
- /* Window alignment information. */
-
- extern struct WindowInfo WindowInfoTable[WINDOW_COUNT];
-
- /* New user interface. */
-
- extern struct Hook LocaleHook;
-
- /* AmigaGuide hook. */
-
- extern struct Hook GuideHook;
-
- /* Special queue management. */
-
- extern struct MsgQueue *SpecialQueue;
-
- /* Window and Screen backfill hook. */
-
- extern struct Hook BackfillHook;
-
- extern ULONG BackfillTag;
-
- /* Intercept data going through SerWrite. */
-
- extern BOOL (* SerWriteBypass)(STRPTR Buffer,LONG Size);
-
- /* The incredibly shrinking file name. */
-
- extern UBYTE ShrunkenName[MAX_FILENAME_LENGTH],
- OriginalName[MAX_FILENAME_LENGTH];
-
- /* Terminal emulation task. */
-
- extern struct MsgQueue *TerminalQueue;
-
- /* AppIcon data. */
-
- extern struct DiskObject DropIcon;
-
- /* Remember some of the incoming data. */
-
- extern BOOLEAN RememberOutput,
- RememberInput,
-
- Recording,
- RecordingLine;
-
- /* Trap settings. */
-
- extern BOOLEAN WatchTraps;
- extern BOOLEAN TrapsChanged;
- extern BOOLEAN FilterTraps;
- extern UBYTE LastTraps[MAX_FILENAME_LENGTH];
- extern ParseContext *TrapStuff;
-
- /* CR/LF receiver translation data. */
-
- extern LONG (* Translate_CR_LF)(register STRPTR Data,register LONG Size);
-
- /* End of line conversion labels. */
-
- extern STRPTR EOL_Labels[];
-
-
- /**********************************************************************/
-
-
- /* This follows the control code information. */
-
- extern struct ControlCode ANSICode[];
- extern WORD NumCodes;
-
-
- /**********************************************************************/
-
-
- extern struct SignalSemaphore ARexxQueueSemaphore;
- extern struct List ARexxQueue;
- extern BOOLEAN ARexxRunning;
-
-
- /**********************************************************************/
-
-
- extern UWORD PenTable[16];
- extern UBYTE TextAttributeTable[16];
- extern WORD ForegroundPen,
- BackgroundPen;
-
-
- /**********************************************************************/
-
-
- extern BOOLEAN ChatMode;
- extern ULONG SliderType;
- extern ULONG CycleType;
-
-
- /**********************************************************************/
-
-
- extern struct ColourTable *NormalColourTable,
- *BlinkColourTable,
- *ANSIColourTable,
- *EGAColourTable,
- *DefaultColourTable,
- *MonoColourTable;
-
-
- /**********************************************************************/
-
-
- extern UBYTE Language[80];
-
-
- /**********************************************************************/
-
-
- extern STRPTR CharCodes[256];
-
-
- /**********************************************************************/
-
-
- extern struct Window *MatrixWindow;
-
-
- /**********************************************************************/
-
-
- extern VOID (* SaveRaster)(LONG First,LONG Last);
-
-
- /**********************************************************************/
-
-
- extern struct SignalSemaphore BufferTaskSemaphore;
- extern struct TextBufferInfo *BufferInfoData;
-
- extern struct SignalSemaphore ReviewTaskSemaphore;
- extern struct TextBufferInfo *ReviewInfoData;
-
-
- /**********************************************************************/
-
-
- extern struct AttributeEntry AttributeTable[];
- extern WORD AttributeTableSize;
-
- /* This is where the information on what arguments exclude
- * other arguments is linked to the actual commands.
- */
-
- extern struct ExclusionInfo *ExclusionTable[];
-
- /* This is where the information on which arguments (switches and keywords)
- * are actually required is stored.
- */
-
- extern UWORD InclusionTable[];
-
- /* This is where command names, arguments and the routines
- * to execute the actual commands are linked together.
- */
-
- extern struct CommandInfo CommandTable[];
- extern WORD CommandTableSize;
-
- extern struct MsgPort *RexxPort;
- extern LONG LastRexxError;
- extern LONG RexxTimeoutVal;
- extern BOOLEAN UpdateRequired,TransferUpdateRequired;
-
- extern LONG RexxLaunchCount;
- extern struct SignalSemaphore RexxLaunchSemaphore;
-
- #endif
-